iT邦幫忙

2021 iThome 鐵人賽

DAY 11
0

在Day5的時候有提到可以使用XAMPP來安裝Apache、MySQL、PHP,當然也有下指令安裝這些服務的方式,但這些方法會讓所有的服務混在一起,因此於2013就誕生這Docker這項服務,能使各個服務獨立、容器化,甚至後面可將環境變數文件化等等。

Docker的服務在還沒有被執行起來時稱為Image,被啟用後的服務稱為Container,有點像物件導向的Class與Object的概念,今天以PostgreSQL作為範例來介紹,PostgesSQL也是一套資料庫的服務,與MySQL類似,兩者也都有提供容器化的服務,可至DockerHub找尋自己想要的Image,那下面就開始實作吧。

  • 打開terminal下指令安裝docker
curl -sSL https://get.docker.com/ | sh
  • 將今天要使用的主角postgresql的Image下載下來,13代表著版本號為13版
docker pull postgres:13
  • 可以利用指令來檢查已經下載過哪些Image
docker images
  • 將container建立起來,name後面代表此container的名稱,-e可以加上各式各樣的環境變數,-p代表開一個對外的port才能讓其他服務(如Navicat)連線,-d代表會在後台持續運作,最後面代表使用的Image
docker run --name some-postgres -e POSTGRES_PASSWORD=mysecretpassword -p 5432:5432 -d postgres:13
  • 建立起來後可以用指令檢查container的狀態
docker ps

https://ithelp.ithome.com.tw/upload/images/20210911/20115048jnPAPKA1cF.jpg

  • 接著就可以打開Navicate來連線了,打開Navicate後點選左上角connection,選擇postgreSQL,Connection Name依照個人喜好填寫即可,Password填寫啟動container時的密碼mysecretpassword就可以連線了,Navicate的UI真的做得很精美呢
    https://ithelp.ithome.com.tw/upload/images/20210911/20115048aePPqBYbIo.png
  • 使用指令停止container服務
docker stop some-postgres

今天的介紹到此結束,謝謝觀看的各位,請記得按讚分享開啟小鈴鐺,你的支持會讓按讚數+1。


上一篇
Day10 我的工作環境
下一篇
Day12 Docker File
系列文
每日1%,你會累趴。30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

0
blanksoul12
iT邦研究生 5 級 ‧ 2021-09-24 14:28:29

對不起,terminal 指? 新手問題,多多包涵

terminal指的是終端機,俗稱小黑窗

mac內建的終端機長這樣
https://ithelp.ithome.com.tw/upload/images/20210924/20115048uMj8ePVU7v.png
https://ithelp.ithome.com.tw/upload/images/20210924/20115048UiOoW4FFob.png

如果是windows系統的話搜尋那邊打上cmd會看到命令提示字元,點開來就是了
https://ithelp.ithome.com.tw/upload/images/20210924/20115048GHucFsrdeI.jpg
https://ithelp.ithome.com.tw/upload/images/20210924/201150480Hx7W3nqjP.jpg

我要留言

立即登入留言